Counters are used in many different electronic apparatuses such as computers, calculators, personal organisers, mobile phones etc.
A counter is a sequential machine designed to cycle through a predetermined sequence of states in response to pulses on an input line. The states usually represent consecutive numbers. There are many different counters available depending on the number code used, the modulus, and the timing mode.
Counters can be either synchronous or asynchronous (or ripple clock counters).
A conventional 4-bit or modulo-16 binary counter is composed of four JK flip-flops. The counter counts pulses on the count enable line or clock input. The output is a 4-bit binary number. A synchronous counter is characterized in that the count enable line of every flip-flop is connected to the same clock source.
In an asynchronous counter the output of some flip-flops is connected to the count enable input of its right neighbour or the more significant bit so that it may alter the state of that neighbour flip-flop. Thus, carry signals ripple through the counter from left to right. Therefore, an asynchronous counter is also called a ripple counter.
A problem with the above mentioned prior art counter designs is that when they are used in applications or apparatuses, such as mobile phones, where power consumption is critical, the power consumption in the flip-flops in the counters is a considerable portion of the total power consumption in the current apparatus.
U.S. Pat. No. 5,585,745 discloses methods and apparatus for reducing the power consumption of personal computers. A power controller reduces power by deactivating functional blocks that are not needed as indicated by clock control signals. Control signals are received from a number of functional blocks, a particular functional block is deactivated upon a request from that functional block or from another functional block, and the particular functional block is activated upon request from another funtional block. Each functional block consumes less power when deactivated than when activated. Preferably, the functional blocks are activated by applying a full-speed clock to the functional block, and are deactivated by not applying the clock to the block. This is accomplished with a "modulated clock" which is derived from a regular output clock as modulated by signals supplied by the clock control lines.
However, U.S. Pat. No. 5,585,745 describes merely functional blocks in general and not a particular kind of block level or block size.